Javascript.RU

Создать новую тему Ответ
 
Опции темы Искать в теме
  #1 (permalink)  
Старый 03.12.2014, 18:41
Аспирант
Отправить личное сообщение для Tord002 Посмотреть профиль Найти все сообщения от Tord002
 
Регистрация: 03.12.2014
Сообщений: 58

json сортировка
Здравствуйте! Нужна помощь!
Ситуация следующая:
Есть обработчик json:

function sql()
{
$.ajax({
type: "POST",
url: "sql.php",
dataType:"json",
data: data,
success: function(data){
for(var i=0;i<data.length;i++)
{
$("#sql").append("<div onclick = 'myfunction()'><input name='pole1' id='pole1' value = 'data[i].id'><input name='pole2' id='pole2' value = 'data[i].Name'></div)");
}}
});
}

Функция myfunction() присваивает значения value другим input

function myfunction() {
document.getElementById('N1').value = $('#pole1').val();; document.getElementById('N2').value = $('#pole2').val();;

}
Данные приходят так (объектов может быть неограниченно):
[{"id":"1","Name":"Mike",},{"id":"2","Name":"Jon h"}]

Проблема вот в чем.
Если объект json один, то все работает, но если их больше, то в document.getElementById('N1').value и document.getElementById('N1').value попадает только значения последнего объекта.

Подскажите, пожалуйста, как можно решить проблему!
Несколько дней голову ломаю!
Заранее огромное спасибо!
Ответить с цитированием
  #2 (permalink)  
Старый 03.12.2014, 20:13
Аспирант
Отправить личное сообщение для Tord002 Посмотреть профиль Найти все сообщения от Tord002
 
Регистрация: 03.12.2014
Сообщений: 58

Другими словами, есть input которому нужно присвоить value из данных json. Но когда объектов несколько, то присваиватся только значения последнего объекта
Ответить с цитированием
  #3 (permalink)  
Старый 03.12.2014, 20:15
Аватар для danik.js
Профессор
Отправить личное сообщение для danik.js Посмотреть профиль Найти все сообщения от danik.js
 
Регистрация: 11.09.2010
Сообщений: 8,804

Не по теме:зачем онклик повесил на родителя инпутов? Как теперь сфокусироваться на инпуте мышкой, не делая клика?
__________________
В личку только с интересными предложениями
Ответить с цитированием
  #4 (permalink)  
Старый 03.12.2014, 20:17
Аватар для danik.js
Профессор
Отправить личное сообщение для danik.js Посмотреть профиль Найти все сообщения от danik.js
 
Регистрация: 11.09.2010
Сообщений: 8,804

У тебя в цикле не используется data вообще.
__________________
В личку только с интересными предложениями
Ответить с цитированием
  #5 (permalink)  
Старый 03.12.2014, 20:24
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,149

Tord002,
id должно быть одно для одного элемента а не одно для всех -- иначе нужен class
Ответить с цитированием
  #6 (permalink)  
Старый 03.12.2014, 20:32
Аспирант
Отправить личное сообщение для Tord002 Посмотреть профиль Найти все сообщения от Tord002
 
Регистрация: 03.12.2014
Сообщений: 58

инпуты с type="hidden". Планировал использовать их для присвоения и передачи значений. Тут не стал лишним кодом захломлять.

Про data в цикле не понял.

С одним объектом работает! В итоге в document.getElementById('N1').value и document.getElementById('N1').value попадают значения.

хз как более понятнее объяснить(((
Когда объектов несколько, выводится несколько div с разными значениями. Т.е. все как нужно.
Но по onclick на этих div отсылает одно и тоже значение в document.getElementById('N1').value и document.getElementById('N1').value (значения последнего объекта).
Извините, если, что-то криво описал
Ответить с цитированием
  #7 (permalink)  
Старый 03.12.2014, 20:34
Аспирант
Отправить личное сообщение для Tord002 Посмотреть профиль Найти все сообщения от Tord002
 
Регистрация: 03.12.2014
Сообщений: 58

Сообщение от рони Посмотреть сообщение
Tord002,
id должно быть одно для одного элемента а не одно для всех -- иначе нужен class
Спасибо, а можно немного подробнее с class!!!!
Ответить с цитированием
  #8 (permalink)  
Старый 03.12.2014, 20:42
Аспирант
Отправить личное сообщение для Tord002 Посмотреть профиль Найти все сообщения от Tord002
 
Регистрация: 03.12.2014
Сообщений: 58

Я понимаю, что id должно быть одно для одного элемента и, что цикл сначало присваивает ему значение первого, потом второго и в итоге последнего. Но как сделать правильно не догоняю
Ответить с цитированием
  #9 (permalink)  
Старый 03.12.2014, 21:08
Аватар для рони
Профессор
Отправить личное сообщение для рони Посмотреть профиль Найти все сообщения от рони
 
Регистрация: 27.05.2010
Сообщений: 33,149

Сообщение от Tord002
инпуты с type="hidden
зачем тогда они нужны
<!DOCTYPE HTML>

<html>

<head>
  <title>Untitled</title>
  <meta charset="utf-8">
  <style type="text/css">
  </style>
  <script src="http://ajax.googleapis.com/ajax/libs/jquery/1.11.0/jquery.min.js"></script>
  <script>
    $(function() {
    var data = [{
        "id": "1",
        "Name": "Mike"
    }, {
        "id": "2",
        "Name": "Jonh"
    }];

    function success(data) {
        $.each(data, function(indx, element) {
            $("<div>", {
                text: "click test " + indx,
                click: function() {
                    $("#N1").val(element.id);
                    $("#N2").val(element.Name)
                }
            }).appendTo("#sql")
        })
    }
    success(data)
});
  </script>
</head>

<body>
<div id="sql"></div>
<input id="N1" name="">
<input id="N2" name="">
</body>

</html>
Ответить с цитированием
  #10 (permalink)  
Старый 03.12.2014, 22:27
Аспирант
Отправить личное сообщение для Tord002 Посмотреть профиль Найти все сообщения от Tord002
 
Регистрация: 03.12.2014
Сообщений: 58

Работает!
Даже не верил!
Дай Бог Вам всего самого хорошего!
Огромное спасибо!
Ответить с цитированием
Ответ



Опции темы Искать в теме
Искать в теме:

Расширенный поиск


Похожие темы
Тема Автор Раздел Ответов Последнее сообщение
Не могу распарсить JSON. gorenie jQuery 3 29.11.2013 22:26
Сортировка JSON данных в цикле Fareastaz jQuery 12 15.03.2013 20:20
сортировка объекта JSON kuzroman jQuery 3 29.09.2011 14:46
JSON или JSONP для запросов на другой сервер? Метод GET, для длинных сообщений? Kotakota jQuery 5 23.08.2011 23:12
Сортировка и фильтрация json jQuery amt779 jQuery 4 28.07.2011 12:53